-- Winter Anathema (c) v.v.balashoff
local Color = require('libs/colorlibrary/colorlibrary')
local Domain = require('leviathan/ECS/Domain')
local Entity = require('leviathan/ECS/Entity')
local TiledMapComponent = require('leviathan/ECS/UI/Components/TiledMapComponent')
local UIRenderSystem = require('leviathan/ECS/UI/Systems/RenderSystem')

local DomainTiledMap = Domain:derive('TiledMap')

function DomainTiledMap:new(world)
    -- call parent constructor
    DomainTiledMap.super.new(self, world, 'TiledMap')
    -- screen dimensions
    local screenW, screenH = love.window.getMode()

    -- set buffer size
    self.buffer.worldX = 0
    self.buffer.worldY = 0
    self.buffer.w = w
    self.buffer.h = h

    -- entity: TiledMap
    local entity = Entity(self, 'TiledMap', 0, 0, screenW, screenH)
    -- components
    -- systems
    local render = UIRenderSystem(self)
    DomainTiledMap:addSystem(self, render)
end

return DomainTiledMap
